package selenium.demo;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;

import java.util.List;

import static java.lang.Thread.sleep;

/**
 * @Author quan
 * @Description 定位元素 xpath和 css selector
 * @Date 2023/8/13 21:40
 */
public class Demo1_FindElement {
    public static void main(String[] args) throws InterruptedException {
        test01();
    }

    public static void test01() throws InterruptedException {
        //创建一个驱动
        ChromeOptions options = new ChromeOptions();
        options.addArguments("--remote-allow-origins=*");
        WebDriver webDriver = new ChromeDriver(options);
        //打开百度首页
        webDriver.get("https://www.baidu.com");
        //输入“测试软件” #kw是输入框的id
        webDriver.findElement(By.cssSelector("#kw")).sendKeys("软件测试");
        //点击“百度一下”按钮 这个按钮的id是#su
//        webDriver.findElement(By.cssSelector("#su")).click();
        webDriver.findElement(By.xpath("//*[@id=\"su\"]")).click();
        //找到所有查询出来的“软件测试”文案对应的元素-em标签是一种HTML标签,用于在网页中强调某些文字或者短语
        sleep(1000);
        List<WebElement> result = webDriver.findElements(By.cssSelector("em"));
        //对结果判断:如果搜索结果为0,表明测试不通过；否则测试通过
        if(String.valueOf(result.size()).equals(0)){
            System.out.println("测试不通过");
        }else{
            System.out.println("测试通过");
        }

        //打印所有的查询的值
        System.out.println(result.size());
    }
}
